﻿using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.Geometry;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;


namespace XS.Tunnel.Cad.SteelBracing.Component
{
    public class InvertedArchLine
    {
        public InvertedArchLine(Curve left,Curve right,Curve vault)
        {
            Left = left;
            Right = right;
            Vault = vault;
        }
        public Curve Left { get; set; }
        public Curve Right { get; set; }
        public Curve Vault { get; set; }


        public List<Curve> ToList()
        {

            var list = new List<Curve>
            {
                Left,
                Right,
                Vault
            };
            return list;
        }
        public List<Curve> ToList(List<Curve> vaults)
        {

            var list = new List<Curve>
            {
                Left,
                Right,
            };
            list.AddRange(vaults);  
            return list;
        }

        public Point3d LeftStartPoint
        {
            get
            {
                return Left.StartPoint;
            }
        }
        public Point3d LeftEndPoint { 
            get 
            {
                return Left.EndPoint; 
            } 
        }

        public Point3d VaultStartPoint {
            get
            {
                return Vault.StartPoint; 
            }
        }
        public Point3d VaultEndPoint { 
            get
            {
                return Vault.EndPoint; 
            } 
        }

        public Point3d RightStartPoint {
            get
            { 
                return Right.StartPoint; 
            }
        }
        public Point3d RightEndPoint { 
            get 
            { 
                return Right.EndPoint;
            } 
        }

    }
}
